//通过vue-router插件实现模板路由配置
import {createRouter, createWebHashHistory, Router} from 'vue-router'
import {anyRoute, asyncRoute, constantRoute, errorRoute} from './routes'
//创建路由器
const router: Router = createRouter({
    //路由模式hash
    history: createWebHashHistory(),
    routes: [...constantRoute, ...asyncRoute, ...errorRoute],
    // 滚动行为
    scrollBehavior(): { left: number; top: number } {
        return {
            left: 0,
            top: 0,
        }
    },
})


// 跳转路由前需要登录
// router.beforeEach((to: RouteLocationNormalized, from: RouteLocationNormalized, next: NavigationGuardNext): void => {
//     // 1.如果访问的是登录页面（无需权限），直接放行
//     if (to.path === '/login' || to.path === '/register') return next()
//     // 2.如果访问的是有登录权限的页面，先要获取token
//     const tokenStr: string = window.sessionStorage.getItem('token')
//     // 2.1如果token为空，强制跳转到登录页面；否则，直接放行
//     if (!tokenStr) {
//         alert("请登录")
//         return next('/login')
//     }
//     next()
// })

export default router
